package br.pucrio.inf.les.genarch.core.models.dsl.implementation;

import br.pucrio.inf.les.genarch.models.implementation.GenericTemplate;
import br.pucrio.inf.les.genarch.models.implementation.impl.ImplementationPackageImpl;

public class GenericTemplateBuilder {
	
	private GenericTemplate implementationTemplate;
	
	private GenericTemplateBuilder() {
		this.implementationTemplate = ImplementationPackageImpl.eINSTANCE.getImplementationFactory().createImplementationTemplate();
	}
	
	public static GenericTemplateBuilder genericTemplate() {
		return new GenericTemplateBuilder();
	}
	
	public GenericTemplate build() {
		return this.implementationTemplate;
	}
	
	public GenericTemplateBuilder name(String name) {
		this.implementationTemplate.setName(name);
		return this;
	}
	
	public GenericTemplateBuilder path(String path) {
		this.implementationTemplate.setPath(path);
		return this;
	}
	
	public GenericTemplateBuilder generationPath(String generationPath) {
		this.implementationTemplate.setGenerationPath(generationPath);
		return this;
	}

}
